package com.cetcs.kmga.dataView.dao.mybatis;

import com.cetcs.kmga.common.Data;
import com.cetcs.kmga.dataView.entity.dataManager.CodeAndValue;
import com.cetcs.kmga.dataView.entity.dataManager.PieChart;
import com.cetcs.kmga.dataView.entity.dataManager.vo.RankOfBehaviorVo;
import com.cetcs.kmga.dataView.entity.dataManager.vo.ResourceRiskEventVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 数据管理统计dao层
 *
 * @author xutao
 * @version V1.0 创建时间：2018-01-23 15:37
 *          Copyright 2018 by CETC
 */
@Repository
public interface DataManagerMapper {


    /**
     * 统计资源风险指数
     *
     * @return
     */
    List<CodeAndValue> statResourceRiskIndexList(@Param("sysId") String sysId);

    /**
     * 统计资源的权重
     *
     * @return
     */
    List<CodeAndValue> statResourceWeights(@Param("sysId") String sysId);


    /**
     * 先找出所有的资源访问总量
     *
     * @param dataMap   startDate 起始时间 endDate   结束时间
     * @return
     */
    Integer getAccessNumOfResourceAccess(Data dataMap);
    /**
     * 资源访问量排名
     *
     * @param dataMap   startDate 起始时间 endDate   结束时间 total_access_num 总数
     * @return
     */
    List<RankOfBehaviorVo> getRankOfResourceAccess(Data dataMap);


    /**
     * 获取最新的15条风险日志信息
     *
     * @return
     */
    List<ResourceRiskEventVo> findNewlyRiskEvent(@Param("sysId") String sysId);

    /**
     * 风险级别
     *
     * @param dataMap  参数为事件  开始时间  结束时间
     * @return
     */
    List<PieChart> findRiskLevelStatistic(Data dataMap);
}
